Various applications, including the delivery of Internet data, involve the routing of packets from a source to a destination, via one or more intermediate nodes such as switches or routers. In some related art systems each switch in a network may maintain information, or “state information” about the topology of the network, and make routing decisions, e.g., based on a destination address in a packet and the state information it maintains. It may then send the packet to another switch, for example, based on the routing decision. Such a process may be cumbersome because it involves storing and maintaining state information and may involve relatively complex algorithms for making routing decisions. These factors may lead to an increase in the cost of the switch, or a reduction in its performance.
Thus, there is a need for an improved system and method for routing.